LO
talkaction

[Talkaction] Exp Calculator

Por LordOfGold, 01 de fev. de 2012 em Actions e Talkactions

exp
calculator
exp calculator
otserv
tibia
script
11
2.3k
LordOfGoldL
01 de fevereiro de 2012 às 21:08

Iae pessoal da Xtibia, esse aqui é o meu primeiro tutorial. Peguem leve. Então vamos ao que interessa:

 

Eu estava fuçando mexendo na pasta de um ot que baixei. E achei um exp calculator todo bugado que nem pegava, e resolvi arrumar:

 

- Vá em "Pasta Do Ot/data/talkactions/scripts", copie um arquivo qualquer renomei para "expcalculator" (sem aspas), apague tudo que tem dentro e cole isso:

function onSay(cid, words, param)
-- Exp Calculator Editado por LordOfGold --
	local futurelevel = getPlayerLevel(cid) + 1
	local lv = getPlayerLevel(cid)

	if lv > 1 then
 equation = (50 * (lv) * (lv) * (lv) - 150 * (lv) * (lv) + 400 * (lv)) / 3
 msg = "Level ".. futurelevel .." precisa ".. equation .." de experiencia para upar."
	else
 msg = "Level 2 precisa 100 experiencia para upar."
	end
	doPlayerSendTextMessage(cid, 25, msg)
	return 0		
end

 

- Agora vá em "Pasta Do Ot/data/talkactions/talkactions.xml" abra este arquivo, coloque a seguinte tag:

<talkaction words="!exp" script="expcalculator.lua"/>

 

- Feche, salve o arquivo. Abra o ot ou fale /reload talkactions, e pronto. Veja um SS de como irá ficar.

s5fznc.png

Créditos:

50% Xikez pela base do script

50% LordOfGold de consertos de bugs, e modificação.

Editado Fevereiro 2 por LordOfGold

8 meses depois...
12 de outubro de 2012 às 01:33

+rep

JustinnoTibiannoJ
12 de outubro de 2012 às 19:01

Achei bem legal e útil, gostei =)

2 meses depois...
gonorreiaswatG
20 de dezembro de 2012 às 19:16

Script muito pequeno, simples demais...

Mas a função dele é ótima.

 

Ganhou meu REP+ de hoje'

DinoAdminD
20 de dezembro de 2012 às 19:23

Script muito pequeno, simples demais...

Mas a função dele é ótima.

 

Ganhou meu REP+ de hoje'

 

Amigo reviver um topico Morto a mais de 30 dias é contra as regras, leia as regras do forum.

Reportado!

Yan OliveiraY
20 de dezembro de 2012 às 19:27

@Gonorreia

 

Como é um usuario exeperiente será alertado em 10%.

gonorreiaswatG
20 de dezembro de 2012 às 19:43

Nossa, só agradeci pelo script do cara.

Quando postam um script, só porque demoraram pra ver significa que tem que ser esquecido pra sempre?

Assim nem aparecer na lista de Tópicos ativos ele aparece, acarretando com um monte de tópicos que eram pra serem bons, sendo "excluídos/abandonados" do forum.

 

#vai_entender né'

Yan OliveiraY
22 de dezembro de 2012 às 21:35

@Gonorreia

 

 

Você sabe que postar depois de um mes é flood. Caso não saiba leia as regras.

OneshotO
22 de dezembro de 2012 às 21:40

Vocês que estão errados. Uma postagem em tópicos inativos a 30 dias que não acrescente nada ao tópico que é considerada flood. O usuário acima comentou, deu a opinião dele e reputou o criador do tópico, não vejo isso como flood.

 

Vamos rever os conceitos, cambada.

 

A propósito, hehe:

 

local msg = "O nível %s precisa de %s pontos de experiência. Você ainda precisa de %s pontos de experiência."

function onSay(cid, words, param, channel)
   local lv = getPlayerLevel(cid) + 1
   local exp1, exp2 = getPlayerExperience(cid), getExperienceForLevel(lv)
   doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, msg:format(lv, exp2, (exp2 - exp1)))
   return true
end

Editado Dezembro 22 por Oneshot

LordfireL
23 de dezembro de 2012 às 02:13

Oneshot tá certo, não entendi a função do if se sem ele seria exatamente a mesma coisa (considerando que não exista level 0).

gonorreiaswatG
24 de dezembro de 2012 às 12:01

Poouxa, se postar em tópico que está parado por 30 dias é FLOOD, mesmo sendo comentário agradecendo ou pedindo esclarecimento, por que vocês não bloqueiam esta função?

Não seria mais fácil?

Se é possível postar, é porque em algum dos motivos de fazê-lo iria ajudar alguém que demorou dias para ver um ótimo trabalho de scripter.

 

 

Molecada, vamos estudar um pouco' :D